package com.sofoscorp.android.gestcobranzamobile;

import java.util.ArrayList;

import android.app.Activity;
import android.content.Intent;
import android.content.res.Resources;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteException;
import android.os.Bundle;
import android.support.v4.widget.SimpleCursorAdapter;
import android.util.Log;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.TabHost;
import android.widget.TabHost.OnTabChangeListener;
import android.widget.TextView;

public class MainActivity extends Activity {
	private Resources gv_Resources = null;
	private TabHost go_Tabs;
	private ListView  lv_ListViewCientes;
	
	//Definir Objeto Intent
	private Intent go_intent = null;
	private Bundle go_bundle = null;
	
	private Cab_ListViewCliente[] TC_Datos;
	private String[] gt_Clientes = null;
	private KNB1_BO go_KNB1_BO;
	private KNB1_Str[] gt_KNB1;
	private KNA1_BO go_KNA1_BO;
	private KNA1_Str[] gt_KNA1;

/*
 * ------------------------------------------------------------------
 * Quitar los tab de Anticipo y pagos 
 * Requerido por: Pierina Acevedo Consultor FI 
 * Modificado por: Luis Silva Consultor ABAP		Fecha: 25.11.2013
 * 
	private String[] gtAnticipo;
	private String[] gtCobranza;
	private ListView  lv_ListViewAnticipo;
	private ListView  lv_ListViewCobranza;
	private ArrayAdapter<String> lv_AdapterAnticipo;
	private ArrayAdapter<String> lv_AdapterCobranza;
 * ------------------------------------------------------------------
 */

	protected void onCreate(Bundle savedInstanceState) {
		//Definir variables locales
		ArrayList<String> lt_list = new ArrayList<String>();
		ArrayAdapter<String> lv_Adaptador;		
		
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		
		//Instanciar Element UI
		setLo_Tabs();
		initialTabs();
		lv_ListViewCientes = (ListView)findViewById(R.id.ListTab1);
		
		//Obtener la sociedad seleccionada
		go_bundle = this.getIntent().getExtras();
		
		try {
			//Instanciar BO
			go_KNB1_BO = new KNB1_BO();
			go_KNA1_BO = new KNA1_BO();
			
			try {
				//Obtener las sociedades configuradas por usuario
				gt_KNB1 = go_KNB1_BO.get_SingleByBUKRS(go_bundle.getString("BUKRS"));
				Log.w("w", "Se lleno gt_KNB1");
			} catch (Exception e) {
				// TODO: handle exception
			}
			
			//No esta funcionando bien
			try {
				if (go_KNA1_BO.do_conn()) {
					gt_KNA1 = go_KNA1_BO.get_all_kunnr(gt_KNB1);	
				} 
				Log.w("w", "Se lleno gt_KNA1");
			} catch (Exception e) {
				// TODO: handle exception
				Log.w("w", "NO Se lleno gt_KNA1");
			}
			
			//Pasar los datos de la tabla a un Arreglo de String del Adaptador
			for (int i = 0; i < gt_KNB1.length; i++) {
				lt_list.add(gt_KNB1[i].getKUNNR());
			}
			gt_Clientes = lt_list.toArray(new String[0]);
		} catch (Exception e) {
			// TODO: handle exception
		}
		
		lv_Adaptador = new ArrayAdapter<String>(MainActivity.this, android.R.layout.simple_list_item_1, gt_Clientes);
		lv_ListViewCientes.setAdapter(lv_Adaptador);

/*
 * ------------------------------------------------------------------
 * Quitar los tab de Anticipo y pagos 
 * Requerido por: Pierina Acevedo Consultor FI 
 * Modificado por: Luis Silva Consultor ABAP		Fecha: 25.11.2013
 * 
		lv_ListViewAnticipo = (ListView)findViewById(R.id.ListTab2);
		lv_ListViewCobranza = (ListView)findViewById(R.id.ListTab3);
 
		lv_AdapterCobranza = new ArrayAdapter<String>(MainActivity.this, android.R.layout.simple_list_item_1, gtCobranza);
		lv_ListViewCobranza.setAdapter(lv_AdapterCobranza);
		
		lv_AdapterAnticipo = new ArrayAdapter<String>(MainActivity.this, android.R.layout.simple_list_item_1,gtAnticipo);
		lv_ListViewAnticipo.setAdapter(lv_AdapterAnticipo);
 * ------------------------------------------------------------------
 */
        
//        lo_Tabs.setOnTabChangedListener(new OnTabChangeListener() {
//			
//			@Override
//			public void onTabChanged(String tabId) {
//				
//				//String currentTabTag = lo_Tabs.getCurrentTabTag();
//				if (tabId.equals("Anticipo")) {
//					gtClientes = new String[] {""};
//					gtCobranza = new String[] {""};
//					gtAnticipo = new String[] {	"1000000001", "1000000002", "1000000003", "1000000004",
//						   						"1000000005", "1000000006", "1000000007", "1000000008",
//						   						"1000000009", "1000000010", "1000000011", "1000000012"};
//					lv_AdapterAnticipo = new ArrayAdapter<String>(MainActivity.this, android.R.layout.simple_list_item_1,gtAnticipo);
//					lv_ListViewAnticipo.setAdapter(lv_AdapterAnticipo);
//					
//					lv_AdapterClientes = new ArrayAdapter<String>(MainActivity.this, android.R.layout.simple_list_item_1, gtClientes);
//					lv_ListViewCientes.setAdapter(lv_AdapterClientes);
//					
//					lv_AdapterCobranza = new ArrayAdapter<String>(MainActivity.this, android.R.layout.simple_list_item_1, gtCobranza);
//					lv_ListViewCobranza.setAdapter(lv_AdapterCobranza);
//					
//		        }else if (tabId.equals("Pago")) {
//		        	gtClientes = new String[] {""};
//		        	gtAnticipo = new String[] {""};
//					gtCobranza = new String[] {	"2000000001", "2000000002", "2000000003", "2000000004",
//		   										"2000000005", "2000000006", "2000000007", "2000000008",
//		   										"2000000009", "2000000010", "2000000011", "2000000012"};
//		        	lv_AdapterCobranza = new ArrayAdapter<String>(MainActivity.this, android.R.layout.simple_list_item_1, gtCobranza);
//					lv_ListViewCobranza.setAdapter(lv_AdapterCobranza);
//					
//					lv_AdapterAnticipo = new ArrayAdapter<String>(MainActivity.this, android.R.layout.simple_list_item_1,gtAnticipo);
//					lv_ListViewAnticipo.setAdapter(lv_AdapterAnticipo);
//					
//					lv_AdapterClientes = new ArrayAdapter<String>(MainActivity.this, android.R.layout.simple_list_item_1, gtClientes);
//					lv_ListViewCientes.setAdapter(lv_AdapterClientes);
//					
//				}else {
//					
//					gtClientes = new String[] {	"Tubrica", "Plastico Empaque", "EPA","MAKRO"};
//					gtAnticipo = new String[] {""};
//					gtCobranza = new String[] {""};
//					
//					lv_AdapterClientes = new ArrayAdapter<String>(MainActivity.this, android.R.layout.simple_list_item_1, gtClientes);
//					lv_ListViewCientes.setAdapter(lv_AdapterClientes);
//					
//					lv_AdapterCobranza = new ArrayAdapter<String>(MainActivity.this, android.R.layout.simple_list_item_1, gtCobranza);
//					lv_ListViewCobranza.setAdapter(lv_AdapterCobranza);
//					
//					lv_AdapterAnticipo = new ArrayAdapter<String>(MainActivity.this, android.R.layout.simple_list_item_1,gtAnticipo);
//					lv_ListViewAnticipo.setAdapter(lv_AdapterAnticipo);
//				}
//			}
//		});
        
		lv_ListViewCientes.setOnItemClickListener(new OnItemClickListener() {

			@Override
			public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
										long arg3) {
				// TODO Auto-generated method stub
				go_intent = new Intent(MainActivity.this,DatosClienteActivity.class);
				startActivity(go_intent);
			}
		});
	}

	public Resources getLv_Resources() {
		return gv_Resources;
	}

	public void setLv_Resources() {
		this.gv_Resources = getResources();
	}
	
	public TabHost getLo_Tabs() {
		return go_Tabs;
	}

	public void setLo_Tabs() {
		this.go_Tabs = (TabHost)findViewById(android.R.id.tabhost);
	}

	public void initialTabs(){
		go_Tabs.setup();
        
        setLv_Resources();
        TabHost.TabSpec lv_spec = go_Tabs.newTabSpec("Clientes");
        lv_spec.setContent(R.id.LblTab1);
        lv_spec.setIndicator("Clientes", gv_Resources.getDrawable(android.R.drawable.ic_btn_speak_now));
        go_Tabs.addTab(lv_spec);
     
/*
 * ------------------------------------------------------------------
 * Quitar los tab de Anticipo y pagos 
 * Requerido por: Pierina Acevedo Consultor FI 
 * Modificado por: Luis Silva Consultor ABAP		Fecha: 25.11.2013
 * 
        lv_spec = lo_Tabs.newTabSpec("Anticipo");
        lv_spec.setContent(R.id.LblTab2);
        lv_spec.setIndicator("Anticipo", lv_Resources.getDrawable(android.R.drawable.ic_dialog_map));
        lo_Tabs.addTab(lv_spec);
        
        lv_spec = lo_Tabs.newTabSpec("Pago");
        lv_spec.setContent(R.id.LblTab3);
        lv_spec.setIndicator("Pago", lv_Resources.getDrawable(android.R.drawable.ic_dialog_map));
        lo_Tabs.addTab(lv_spec);
 * ------------------------------------------------------------------
 */
        go_Tabs.setCurrentTab(0);	
	}
	
	@Override
	public boolean onCreateOptionsMenu(Menu menu) {
		// Inflate the menu; this adds items to the action bar if it is present.
		getMenuInflater().inflate(R.menu.main, menu);
		return true;
	}	
	
}
